Field of the Invention
The present invention relates to the display of objects such as files and containers in a hierarchy and more particularly to the flattening of the display of files and containers in an object hierarchy.
Description of the Related Art
Electronic objects in a data processing system often are organized hierarchically in a parent-child relationship. Specifically, the earliest file systems for computing environments provided a hierarchical directory structure in which electronically stored documents could be stored in specific directories or folders. Directories and folders, collectively viewed as containers, could be nested to provide a level of organization for electronic documents akin to a tree having a root node, leaf nodes and intermediate branches and connecting nodes.
Contemporary data structure theory expands upon the notion of the hierarchical directory structure to provide the most common form of genus-species data organization not only for file storage, but for general objects in memory as well. While hierarchical trees are known to be constructed programmatically in a number of ways, the most common way is the linked list of nodes in a tree formation. Generally, the hierarchical tree can be visually rendered in a GUI by providing collapsible nodes such that the hierarchy can be viewed merely as a root node, or the hierarchy can be viewed in fully expanded form to reveal the hierarchical tree. Of course, as each node in the hierarchy can be expanded or collapsed individually, any portion of the hierarchical tree can be viewed within the GUI as most computing users have become accustomed to understand.
In the most recognizable form of the conventional hierarchical tree file browser, a dual paned approach is provided. The dual paned approach includes a navigation pane and a content pane. In the navigation pane, a visual tree representative of the file hierarchy is rendered with collapsible and expandable nodes throughout. The nodes are limited, however, to containers of the hierarchy and the nodes do not include files. By comparison, in the content pane, the content of a selected node is displayed. The content generally includes both the file content of the container represented by the selected node, and any containers immediately linked in child-relationships to the container represented by the selected node.
Other recognizable forms of the conventional hierarchical tree file browser provide for a multi-paned approach. In the multi-paned approach, the left-most, primary pane includes a tree view of the entire hierarchy. Subsequent panes adjacent to the left-most, primary pane and to the right of the left-most, primary pane provide hierarchical views of the branches represented by selected nodes in the left adjacent panes. The right-most pane ultimately provides a listing of the files in a selected node as well as any containers linked to the selected node in a child relationship.
For relatively flat hierarchical file system structures, the conventional hierarchical tree file browser functions admirably after more than two decades of use. Yet, for deep, multi-branch structures, the conventional hierarchical tree file browser falls short on functionality. Specifically, in order to readily view and appreciate different files within different containers of a file system within a conventional hierarchical tree file browser, the end user must repeatedly select different nodes along a branch while recording the content of each node separately. Recognizing relationships between different files at different levels of the hierarchy of files can be near impossible.